#ifndef CONTEXT_GAMEPLAY_H
#define CONTEXT_GAMEPLAY_H


#include "Engine/Visual.h"
#include "Engine/Reason.h"
#include "Engine/Sense.h"
#include "Engine/Resource/Graphic.h"

namespace Context { class Game; } 

namespace Context {

class Gameplay : public Engine::Visual, public Engine::Reason, public Engine::Sense {
	private:
		Engine::Resource::Graphic background; 
		static Context::Game * actualGame; 
		static Gameplay * instance; 

	public:
		static inline Gameplay * raise(); 
		virtual ~Gameplay(); 

	private:
		Gameplay(); 

	public:
		virtual Engine::Resource::GraphicList display(); // Asks for generation of a graphical model to be displayed
		virtual void pulse(int delta); 
		inline virtual void exit(); 
};
inline Context::Gameplay * Gameplay::raise()
{
	if (instance == 0) instance = new Gameplay();
	return instance;
}

inline void Gameplay::exit() {
}


} // namespace Context
#endif
